約 3,155,711 件
https://w.atwiki.jp/phptest/pages/32.html
XML関係。 空DOM生成・パースあとでいいです Java PHP javascript 子要素、子孫要素取得・生成・追加・削除 Java Java Platform インタフェース Node getChildNodesメソッドでNodeListとしてすべての子要素を取得してNodeListで作成。 以下DataStructureSampleMain.javaより NodeList es = e.getChildNodes(); for (int i=0; i es.getLength(); i++) { Element child = (Element)es.item(i); printDIV(out, child); } 要素の生成createElementメソッド Element htmlE = dstDoc.createElement("html"); 要素の追加appendChildメソッド dstDoc.appendChild(htmlE); 要素の削除removeChildメソッド dstDoc.removeChild(linkE); //linkタグが除去される 子孫要素の参照について再帰を使って表す方法 public static void printDIV(PrintStream out, Element e) { out.print(" div "); if (e.getTagName().equals("FILE")) { out.print(e.getAttribute("fileName")); out.print(" span ("); out.print(e.getAttribute("lastModifiedDate")); out.print(") /span "); } else { out.print(e.getAttribute("directoryName")); out.print(" span ("); out.print(e.getAttribute("lastModifiedDate")); out.print(") /span "); NodeList es = e.getChildNodes(); for (int i=0; i es.getLength(); i++) { Element child = (Element)es.item(i); printDIV(out, child); //自分自身のメソッドに子ノードのエレメントを取り出して渡している } } out.println(" /div "); } getElementByTagNameメソッド 指定したタグ名以下の全ての子孫要素をNodeListで返します。 「枝分かれ」があった場合は名前順に当たるのが早い順(文章順)に葉ノードまで参照して次へ向かう様です。 実行したサンプル DataStructureSampleMain,javaの(DOM課題)appendDirectorysChildメソッド内部 NodeList sysoutList = document.getElementsByTagName("DIR"); for(int i=0; i sysoutList.getLength(); i++){ System.out.print(i); System.out.println((Element)sysoutList.item(i)); } 実行結果 2013年07月11日 0[DIR null] 0[DIR null] 1[DIR null] 0[DIR null] 1[DIR null] 2[DIR null] 0[DIR null] 1[DIR null] 2[DIR null] 参照元 (Java Platform)Element PHP createElementメソッドによりxmlタグのような形で要素の作成が可能。 このメソッドに二つ目の要素を書くとテキストノードの様に処理される。 appendChildメソッドで要素の追加を行うことが出来る。 その他のメソッドの細かい説明はほかの項目で。 実行サンプル ?php $dom = new DOMDocument( 1.0 , UTF-8 ); //ドキュメントを新しく作成 $element = $dom- createElement( test , This is the root element ); //新要素に属性を付与してテキストも追加 $dom- appendChild($element); //ドキュメントに子ノードを追加 echo $dom- saveXML(); //DOM表現からXMLドキュメントを作成 ? このサンプルはPHP5で実行されました 参照元 PHP Manual javascript ※javascriptでのXMLのDOM化にはDHTMLが非常によく使われ、そのためほぼIEでしか起動できない状況です。 子要素を取るときはJavaやphp同様にすることが出来ます。 XML部分 ?xml version="1.0" encoding="shift_jis"? 会員データ 氏名 伸縮 次郎 /氏名 住所 大阪 /住所 /会員データ HTML部分 script language="JavaScript" function Test(){ Docm = new ActiveXObject( microsoft.XMLDOM ); //この関数はIEにのみ対応しています。 Docm.async = false; //XMLの読み込み終了まで処理を待ちます。 Docm.load( samp01.xml ); var string =""; string = "samp01.xmlルートノード名 "+Docm.documentElement.nodeName+" br "; //ルートノードを取る。 if(Docm.documentElement.hasChildNodes()) //子ノードを持っていたら { var i = 0; var n_num = Docm.documentElement.childNodes.length; //ルートについている子ノードの数 while(i n_num){ string += Docm.documentElement.childNodes.item(i).text += " "; //子ノードのテキストを取る。 i++; } } document.write(string); } /script 参照:伸び縮みマークアップ言語-XML これを応用して再帰処理を行うことで子孫要素を取得できます。 function LoopChilds(target){ var childs=target.childNodes; if(childs.length != 0){ for(var i=0;i childs.length;i++){ result += childs(i).nodeName + " " + childs(i).nodeValue+" br "; var nextChilds = childs(i).childNodes; if(nextChilds.length != 0)LoopChilds(childs(i)); } } return result; } 参照:全子孫ノードを探査するループ処理 子要素の生成、追加 JavascriptでXMLファイルを指定しなかった場合、htmlファイル自信を参照しようとします。 script type="text/javascript" function addElement() { var element = document.createElement( div ); //要素を作成 element.id = "id"; //idを使うことでエレメントをノードの様に扱うことが可能です。 element.innerHTML = "hogehoge"; //コメント部分を記入 element.style.backgroundColor = red ; //背景を指定 var objBody = document.getElementsByTagName("body").item(0); //「body」と付いた最初のタグを指します objBody.appendChild(element); //指定したノードに要素を追加します。 // body要素にdivエレメントを追加 } /script button onclick="addElement()" 要素を追加 /button !-- div id="id" hogehoge /div がhtml上出力 -- 子要素の削除 element.removeChildメソッドを使用します。 ※getElementsByTagNameからの指定はできないようです… function removeElement(){ var element = document.getElementById("id"); element.removeChild(element.childNodes.item(0)); } // button onclick="removeElement()" 要素を削除 /button などつけて実行 参照 JavascriptIST-Javascriptリファレンス 親要素追加 ドキュメントの作成についてここに記述しておきます。 Java ドキュメント作成 DocumentBuilderFactory dbfFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docbuilder = dbfFactory.newDocumentBuilder(); Document document = docbuilder.newDocument(); これらのクラスはスレッド一つあたり一つのインスタンスになることが推奨されています。 (Java Platform)DocumentBuilder PHP javascript 属性取得・更新・削除 Java 属性の追加を行うにはsetAttributeメソッド Element link = document.createElement("link"); link.setAttribute("rel", "stylesheet"); link.setAttribute("type", "text/css"); link.setAttribute("href", "divTestCss.css"); head.appendChild(link); 属性の削除を行うにはremoveAttributeメソッド another.setAttribute("lastModifiedDate", sdf1.format(new Date(files1[j].lastModified()))); //another.removeAttribute("lastModifiedDate"); 属性の取得を行うにはgetAttributeメソッド out.print(e.getAttribute("fileName")); (Java Platform)Element PHP 属性の追加と習得 createAttributeメソッドとvalue指定を行える。 しかしsetAttributeも使えるのでこちらを使ったほうが早い。 $domElement = $domDocument- createElement( div , dirName ); $domAttribute = $domDocument- createAttribute( day ); //属性名のみ作成 $domAttribute- value = daypass ; //属性値を設定 $domElement- setAttribute("align","left"); //属性値と属性名を設定。 $domElement- appendChild($domAttribute); $domDocument- appendChild($domElement); 属性の削除 removeAttributeメソッド 更新は一旦削除して追加 $domElement- setAttribute("align","left"); $domElement- removeAttribute("align"); 属性の確認はhasAttributeメソッドで行う PHP Manual javascript a id="sample" rel="test" sampleLink /a br script type="text/javascript" function findElement(){ var element = document.getElementById("sample"); element.removeAttribute("rel"); //属性を削除する alert("a タグの rel 属性 "+element.getAttribute("rel")); } function findElement2(){ var element = document.getElementById("sample"); element.setAttribute("rel","hoge"); //属性の値を設定する alert("a タグの rel 属性 "+element.getAttribute("rel")); } /script button onclick="findElement()" aタグの属性を削除 /button button onclick="findElement2()" aタグの属性をhogeに /button 文字列データ取得・生成・追加・削除 Java 文字列をxmlタグ内に出力を行うにはcreateTextNodeメソッド divE.appendChild(dstDoc.createTextNode(e.getAttribute("fileName") + " ")); PHP javascript その他 Java 要素の削除、追加についてTextノード以外にも応用できる方法 removeChildメソッドとreplaceChildメソッド Element body = document.createElement("body"); root.appendChild(body); body.appendChild(document.createTextNode("本文")); Element bulk = document.createElement("使わない"); body.appendChild(bulk); //body.removeChild(bulk); //bulk要素を削除するスレッド Element dir = document.createElement("div"); dir.appendChild(document.createTextNode("dirxxx")); body.replaceChild(dir, bulk); //bulk要素とdir要素を交換 (Java Platform)Node PHP メモの様な PHPで実行できたサンプル !DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" html head meta http-equiv="content-type" content="text/html;charset=shift_jis" title Sample /title script type="text/javascript" !-- function create() { var divObj = document.getElementById("pBox"); var tNode = document.createTextNode("Sample "); //テキストノードの作成 divObj.appendChild(tNode); //(テキスト)ノードの追加 } // -- /script /head body bgcolor="#fffff0" h1 createTextNode /h1 form input type="button" id="myButton" value="Click" onClick="create()" /form div id="pBox" /div /body /html JavaScript DOM リファレンス
https://w.atwiki.jp/mue0125/pages/5.html
XML パース パースとは、XMLデータが正しいデータであることを検証すること パーサの種類Project X XML4J Ruby XMLParser XMLパーサ XML文書を、アプリケーションソフトが利用しやすい形に変換するソフトウェア。変換時に、XML文書が文法に照らして正確に記述されているかどうかを同時に検証する。MSXML(Microsoft)
https://w.atwiki.jp/allegory/pages/28.html
XML 概要 正式名称(eXtensible Markup Language) タグでマーク付けをしながら記述する。メタ言語(言語を記述するための言語) 基本的に、XMLであらかじめ決まっている文法(構造)があり、その範囲の中で自由に決める事が可能。 テキストであり、流通性が良い。 データベースと同様にアクセスや検索が可能。 XML関連仕様 XSLT? XML文書をほかのデータ形式にコンバートするスクリプト言語 XLink? XML文書間のハイパーリンクを記述 XHTML? HTMLをXML文法で記述
https://w.atwiki.jp/naobe/pages/87.html
アプリケーションに戻る URLとURI http //web-tan.forum.impressrd.jp/e/2010/03/09/7539 参照 URIはURLとURN(Universal Resource Name)を合わせたもの。URNとは、名前を永続的に識別する書き方のルール。http //localhost 8080の"http "は、URIの識別子(スキーム)なのでURIというのが正しい。 DOCTYPE宣言 !DOCTYPE ルート要素 SYSTEM 宣言を含むファイルのURI または !DOCTYPE ルート要素 PUBLIC public識別子 宣言を含むファイルのURI 項目 説明 ルート要素 DOCTYPE宣言が書かれているXMLファイルのルート要素 public識別子 XMLプロセッサが識別できる特定の文字列 宣言を含むファイルのURI DOCTYPE宣言が書かれているXMLファイルのDTDファイルのURI 2番目の定義はpublic識別子でDTDを探して、なければURIを探す。 Struts1.XXの例 !DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http //struts.apache.org/dtds/struts-config_1_3.dtd" Namespace http //www6.airnet.ne.jp/manyo/xml/schema/step46.html 参照 Springのビーン定義ファイルを解釈してみる。 beans xmlns="http //www.springframework.org/schema/beans" xmlns xsi="http //www.w3.org/2001/XMLSchema-instance" xsi schemaLocation="http //www.springframework.org/schema/beans http //www.springframework.org/schema/beans/spring-beans-3.0.xsd" 項目 説明 xmlns="http //www.springframework.org/schema/beans" beans要素のデフォルトネームスペースは、"http //www.springframework.org/schema/beans"。 xmlns xsi="http //www.w3.org/2001/XMLSchema-instance" xsi名前空間は"http //www.w3.org/2001/XMLSchema-instance" xsi schemaLocation="http //www.springframework.org/schema/beans http //www.springframework.org/schema/beans/spring-beans-3.0.xsd" "http //www.springframework.org/schema/beans"という名前空間を定義しているのは、http //www.springframework.org/schema/beans/spring-beans-3.0.xsd" 名前空間がない場合の記述は以下の通り ?xml version="1.0" encoding="UTF-8" ? xsi noNamespaceSchemaLocation="mp3.xsd" xmlns xsi="http //www.w3.org/2001/XMLSchema-instance"
https://w.atwiki.jp/homloid514/pages/24.html
そのものの再配布はNGです。 アレンジしてからの再配布はOKですが、その際には一言教えていただけると幸いです。 再配布したのち、配布所のリンクを教えていただければもらいにいきます。 キーはすべて「homloid」にしています。 ustの利用規約はよくわかりませんが、もし上記のことで「これいいの?」などわからないことがありましたら、neon.ki514@gmail.comまでにメールを送っていただければ幸いです(`・ω・´) また、急ぎの場合はついったーにお願いします。→@Hom514_utau りーどみーというテキストがyouのustファイルにのみ入っています。 それ以降には入れないことにしています。 りーどみーっぽいもの↓ 動画でもしこのustを使ってくださりましたら、リンクとして元の動画を貼っていただけると泣いて喜びます。 そのものの再配布はNGですが、アレンジしたものを配布するのはOKです。その際には、私に連絡をくれたり、元のustの配布所をリンクとして貼っていただけると嬉しいです。 上記のことでもしわからないことがありましたらneon.ki514@gmail.comまでに連絡ください! 急ぎのときはついったーでお願いします! ついった→@Hom514_utau 一番上の文とそんな変わらない内容ですが、多めにみてやってください( ^ω^)焦って配布した私のミスなのです( ^ω^)
https://w.atwiki.jp/aristo_v30/pages/37.html
eXtensible Markup Languageの略です。 1996年に準化団体であるW3CのXMLワーキング グループ (当初は「SGML Editorial Review Board」と呼ばれていた)によって開発された自己拡張が可能なマークアップ言語の1つ。 XMLでは文書の型を定義する情報(DTD:Document Type Definition)を文書とは別途定義し、このDTDで定義された規則に従ってXML文書を解釈するため、文書の構造をその作り手が自由に決定できるといった特徴がある。(これが自己拡張可能といわれるゆえんである) この機能を利用すればXMLという標準仕様を用いながら、 特定の構造にとらわれない自由度の高い文書を 広く交換できるようになる。 インターネットの普及に伴ってこれを利用した電子商取引(EC)が活発化したことから、ECでやり取りする標準文書仕様として注目されることとなった。
https://w.atwiki.jp/housei-nojuku/pages/18.html
野宿Ust ustreamのプラグインを研究中! 配信もまだしたことないけどね。 近日配信予定
https://w.atwiki.jp/sklab/pages/28.html
?xml version="1.0" encoding="utf-8"? products product id="product1" category="book" name Programing Something /name price 2000 /price publishDate 2008/10/10 /publishDate authors author Tarou Book /author author Hanako Book /author /authors /product product id="product2" category="book" name Administrating Something /name price 5000 /price publishDate 2008/10/12 /publishDate authors author Kotarou Book1 /author author Kohanako Book2 /author /authors /product product id="product3" category="novel" name Suspection novel /name price 500 /price publishDate 2007/12/12 /publishDate authors author Jirou Tarou /author /authors /product product id="product4" category="novel" name Fantasy novel /name price 540 /price publishDate 2008/9/14 /publishDate authors author Tarou Book /author /authors /product product id="product5" category="cram" name Study English /name price 2400 /price publishDate 2008/9/14 /publishDate authors author English Tarou /author author English Jirou /author /authors /product /products XElement products = XElement.Load(@"D \temp\products.xml"); var query = from p in products.Elements("product") where (string)p.Attribute("category") == "book" select new { ID = (string)p.Attribute("id"), Name = (string)p.Element("name"), Price = (decimal)p.Element("price") }; foreach (var item in query) { Console.WriteLine(item); } var xeml = XElement.Load(@"C \Users\kanno\Desktop\test.xml"); IEnumerable XElement test = xeml.Elements("product"); var t = test.Select((value, index) = new { value, index }); foreach(var s in t){ Console.WriteLine(s.index); }
https://w.atwiki.jp/imakigawai/pages/11.html
[XML] メニュー XML Schema
https://w.atwiki.jp/playaholic/pages/8.html
XML 概要 正式名称(eXtensible Markup Language) タグでマーク付けをしながら記述する。メタ言語(言語を記述するための言語) 基本的に、XMLであらかじめ決まっている文法(構造)があり、その範囲の中で自由に決める事が可能。 テキストであり、流通性が良い。 データベースと同様にアクセスや検索が可能。